package com.sz.stock.model;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class DealExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DealExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andStockDealIdIsNull() {
            addCriterion("STOCK_DEAL_ID is null");
            return (Criteria) this;
        }

        public Criteria andStockDealIdIsNotNull() {
            addCriterion("STOCK_DEAL_ID is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealIdEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_ID =", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdNotEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_ID <>", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdGreaterThan(Integer value) {
            addCriterion("STOCK_DEAL_ID >", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_ID >=", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdLessThan(Integer value) {
            addCriterion("STOCK_DEAL_ID <", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdLessThanOrEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_ID <=", value, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdIn(List<Integer> values) {
            addCriterion("STOCK_DEAL_ID in", values, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdNotIn(List<Integer> values) {
            addCriterion("STOCK_DEAL_ID not in", values, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdBetween(Integer value1, Integer value2) {
            addCriterion("STOCK_DEAL_ID between", value1, value2, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealIdNotBetween(Integer value1, Integer value2) {
            addCriterion("STOCK_DEAL_ID not between", value1, value2, "stockDealId");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridIsNull() {
            addCriterion("STOCK_DEAL_USERID is null");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridIsNotNull() {
            addCriterion("STOCK_DEAL_USERID is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_USERID =", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridNotEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_USERID <>", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridGreaterThan(Integer value) {
            addCriterion("STOCK_DEAL_USERID >", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridGreaterThanOrEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_USERID >=", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridLessThan(Integer value) {
            addCriterion("STOCK_DEAL_USERID <", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridLessThanOrEqualTo(Integer value) {
            addCriterion("STOCK_DEAL_USERID <=", value, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridIn(List<Integer> values) {
            addCriterion("STOCK_DEAL_USERID in", values, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridNotIn(List<Integer> values) {
            addCriterion("STOCK_DEAL_USERID not in", values, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridBetween(Integer value1, Integer value2) {
            addCriterion("STOCK_DEAL_USERID between", value1, value2, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealUseridNotBetween(Integer value1, Integer value2) {
            addCriterion("STOCK_DEAL_USERID not between", value1, value2, "stockDealUserid");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeIsNull() {
            addCriterion("STOCK_DEAL_CODE is null");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeIsNotNull() {
            addCriterion("STOCK_DEAL_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeEqualTo(String value) {
            addCriterion("STOCK_DEAL_CODE =", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeNotEqualTo(String value) {
            addCriterion("STOCK_DEAL_CODE <>", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeGreaterThan(String value) {
            addCriterion("STOCK_DEAL_CODE >", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeGreaterThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CODE >=", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeLessThan(String value) {
            addCriterion("STOCK_DEAL_CODE <", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeLessThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CODE <=", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeLike(String value) {
            addCriterion("STOCK_DEAL_CODE like", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeNotLike(String value) {
            addCriterion("STOCK_DEAL_CODE not like", value, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeIn(List<String> values) {
            addCriterion("STOCK_DEAL_CODE in", values, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeNotIn(List<String> values) {
            addCriterion("STOCK_DEAL_CODE not in", values, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CODE between", value1, value2, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCodeNotBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CODE not between", value1, value2, "stockDealCode");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyIsNull() {
            addCriterion("STOCK_DEAL_COMPANY is null");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyIsNotNull() {
            addCriterion("STOCK_DEAL_COMPANY is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyEqualTo(String value) {
            addCriterion("STOCK_DEAL_COMPANY =", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyNotEqualTo(String value) {
            addCriterion("STOCK_DEAL_COMPANY <>", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyGreaterThan(String value) {
            addCriterion("STOCK_DEAL_COMPANY >", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyGreaterThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_COMPANY >=", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyLessThan(String value) {
            addCriterion("STOCK_DEAL_COMPANY <", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyLessThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_COMPANY <=", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyLike(String value) {
            addCriterion("STOCK_DEAL_COMPANY like", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyNotLike(String value) {
            addCriterion("STOCK_DEAL_COMPANY not like", value, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyIn(List<String> values) {
            addCriterion("STOCK_DEAL_COMPANY in", values, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyNotIn(List<String> values) {
            addCriterion("STOCK_DEAL_COMPANY not in", values, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_COMPANY between", value1, value2, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealCompanyNotBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_COMPANY not between", value1, value2, "stockDealCompany");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateIsNull() {
            addCriterion("STOCK_DEAL_OPERATE is null");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateIsNotNull() {
            addCriterion("STOCK_DEAL_OPERATE is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateEqualTo(String value) {
            addCriterion("STOCK_DEAL_OPERATE =", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateNotEqualTo(String value) {
            addCriterion("STOCK_DEAL_OPERATE <>", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateGreaterThan(String value) {
            addCriterion("STOCK_DEAL_OPERATE >", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateGreaterThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_OPERATE >=", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateLessThan(String value) {
            addCriterion("STOCK_DEAL_OPERATE <", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateLessThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_OPERATE <=", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateLike(String value) {
            addCriterion("STOCK_DEAL_OPERATE like", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateNotLike(String value) {
            addCriterion("STOCK_DEAL_OPERATE not like", value, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateIn(List<String> values) {
            addCriterion("STOCK_DEAL_OPERATE in", values, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateNotIn(List<String> values) {
            addCriterion("STOCK_DEAL_OPERATE not in", values, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_OPERATE between", value1, value2, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealOperateNotBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_OPERATE not between", value1, value2, "stockDealOperate");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyIsNull() {
            addCriterion("STOCK_DEAL_MONEY is null");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyIsNotNull() {
            addCriterion("STOCK_DEAL_MONEY is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyEqualTo(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY =", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyNotEqualTo(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY <>", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyGreaterThan(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY >", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY >=", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyLessThan(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY <", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("STOCK_DEAL_MONEY <=", value, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyIn(List<BigDecimal> values) {
            addCriterion("STOCK_DEAL_MONEY in", values, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyNotIn(List<BigDecimal> values) {
            addCriterion("STOCK_DEAL_MONEY not in", values, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("STOCK_DEAL_MONEY between", value1, value2, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("STOCK_DEAL_MONEY not between", value1, value2, "stockDealMoney");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeIsNull() {
            addCriterion("STOCK_DEAL_CJTIME is null");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeIsNotNull() {
            addCriterion("STOCK_DEAL_CJTIME is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJTIME =", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeNotEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJTIME <>", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeGreaterThan(String value) {
            addCriterion("STOCK_DEAL_CJTIME >", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeGreaterThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJTIME >=", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeLessThan(String value) {
            addCriterion("STOCK_DEAL_CJTIME <", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeLessThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJTIME <=", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeLike(String value) {
            addCriterion("STOCK_DEAL_CJTIME like", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeNotLike(String value) {
            addCriterion("STOCK_DEAL_CJTIME not like", value, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeIn(List<String> values) {
            addCriterion("STOCK_DEAL_CJTIME in", values, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeNotIn(List<String> values) {
            addCriterion("STOCK_DEAL_CJTIME not in", values, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CJTIME between", value1, value2, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjtimeNotBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CJTIME not between", value1, value2, "stockDealCjtime");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealIsNull() {
            addCriterion("STOCK_DEAL_CJDEAL is null");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealIsNotNull() {
            addCriterion("STOCK_DEAL_CJDEAL is not null");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJDEAL =", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealNotEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJDEAL <>", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealGreaterThan(String value) {
            addCriterion("STOCK_DEAL_CJDEAL >", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealGreaterThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJDEAL >=", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealLessThan(String value) {
            addCriterion("STOCK_DEAL_CJDEAL <", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealLessThanOrEqualTo(String value) {
            addCriterion("STOCK_DEAL_CJDEAL <=", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealLike(String value) {
            addCriterion("STOCK_DEAL_CJDEAL like", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealNotLike(String value) {
            addCriterion("STOCK_DEAL_CJDEAL not like", value, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealIn(List<String> values) {
            addCriterion("STOCK_DEAL_CJDEAL in", values, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealNotIn(List<String> values) {
            addCriterion("STOCK_DEAL_CJDEAL not in", values, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CJDEAL between", value1, value2, "stockDealCjdeal");
            return (Criteria) this;
        }

        public Criteria andStockDealCjdealNotBetween(String value1, String value2) {
            addCriterion("STOCK_DEAL_CJDEAL not between", value1, value2, "stockDealCjdeal");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}